Log In  
[back to top]

[ :: Read More :: ]

Sometimes, especially when working with animations, I prefer using GraphicsGale than Pico's internal editor. So I'd be glad if I could copy/paste sprites to/from standard image editing programs. As of how palette thing would work when pasting, if pixel is "unknown" (not in pico's palette), color with closest r/g/b values from palette would be used.

So e.g. if I have some pixels that are totally blue (#00FF00), when pasting those pixels will be changed to closest color in pico's palette which is 1 (I think) in this case.

Alternatively import/export of spritesheet from/to png file would be welcome, with same color conversion process when importing as when proposed pasting.

P#16140 2015-11-02 21:14 ( Edited 2016-06-27 22:46)

[ :: Read More :: ]

Like explode() in PHP, nothing fancy, just taking a string and convert it into an array based on delimiter, so e.g. I can have following string: "303;12;18;6;23;45;10;66" and after doing:

array = explode("303;12;18;6;23;45;10;66",";")

Array will be {303,12,18,6,23,45,10,66}.

Reason is of course token space and I want to encode maps this way for my contra cart.

P#16130 2015-11-02 19:11 ( Edited 2015-11-03 00:11)

[ :: Read More :: ]

Currently every limit of Pico-8 is kinda rigid, but how about it: You can adjust these limits at the cost of the other ones. E.g. you need bigger map, but don't use much of sound or code? You can increase map at the cost of code space/sound space. Alternatively you need more code but not use much sounds? Decrease sound space, increase code space.

Of course default split would be as it is now.

P#15583 2015-10-19 07:17 ( Edited 2015-10-21 16:32)

[ :: Read More :: ]

Still being able to load carts, just not edit and save them. This would be useful in case of carts that are laggy in browser but fine when dl'd and when you want to distribute "standalone" version of your game.

P#15168 2015-10-08 21:35 ( Edited 2015-10-14 10:22)

[ :: Read More :: ]

This is a function that will generate cart's guid (used for cartdata function) based on things specific to the cartridge (mapdata, gfx, sfx and code).

function getcartguid()
  reload(0x4300,0x4300,7168)
  alphabet = "1234567890abcdefghijklmnopqrstuvwxyz_1234567890abcdefghijklmnopqrstuvwxyz_1234567890abcdefghijklmnopqrstuvwxyz_1234567890abcdefghijklmnopqrstuvwxyz_1234567890abcdefghijklmnopqrstuvwxyz_1234567890abcdefghijklmnopqrstuvwxyz_1234567890abcdefghijklmnopqrstuvwx"
        guid = ""
        for i=0,15 do
          num = peek (0x0+i)
          guid = guid .. sub(alphabet,num+1,num+1)
        end
        for i=0,15 do
          num = peek (0x2000+i)
          guid = guid .. sub(alphabet,num+1,num+1)
        end
        for i=0,15 do
          num = peek (0x3200+i)
          guid = guid .. sub(alphabet,num+1,num+1)
        end
        for i=0,15 do
          num = peek (0x43af+i)
          guid = guid .. sub(alphabet,num+1,num+1)
        end
        --print (#guid)
        --print (guid)
        return guid
end

Probably it could've been more optimized, but I am pretty sure it will work correctly. Resulting string will be
somewhat random, but will be unique as no two carts have same map, gfx, sfx and code and overlap in areas
checked by the function is minimal between different carts.

P#14891 2015-10-02 20:33 ( Edited 2015-10-03 00:34)

[ :: Read More :: ]

E.g. for storing text (hiscore name, anyone?). Since each number is 4 bytes long, to make standard "Top10" list you'd use only 40 bytes (results only). Which leaves 216 bytes free, that could be used for names, each 21 letters long (well, 21.6 actually, but we can't have 0.6 of character, now can we?). I know we can peek/poke into save data (although it seems memory map haven't been updated in manual), but I'm not sure if it would save.

P#14888 2015-10-02 19:46 ( Edited 2015-10-09 20:39)

[ :: Read More :: ]

Could someone make 2d physics engine for pico, something like box2d or chipmunk (though probably w/out rotation as pico doesn't allow for them)?

P#14782 2015-10-01 09:14 ( Edited 2015-10-03 15:09)

[ :: Read More :: ]

What are some methods to use in order to decrease token amount in the game?

P#14568 2015-09-24 11:11 ( Edited 2015-09-24 21:06)

[ :: Read More :: ]

I realize saving comes to Pico, but I've always wondered how one would create password save system like old games had. Any tips?

P#14429 2015-09-20 15:08 ( Edited 2015-09-20 19:26)

[ :: Read More :: ]

It should play on first channel that nothing happens at the moment, if the music is in effect it should detect empty channels by looking which channels are "selected" in music pattern editor to play.

P#14369 2015-09-19 17:51 ( Edited 2015-09-19 23:04)

[ :: Read More :: ]

It would stop execution and dump you into command mode. This would work like setting up breakpoint when you know that something doesn't go right after a specific instruction is executed but you are not sure what.

Example uses:

Stop() after changing the variable: Allows you to print it out in command mode to see if value change according to expectations (e.g. when dealing with imprecision of decimals or when you suspect integer overflow)

Stop() at the end of _Draw(): Allows you to display cart frame by frame e.g. when you debug graphics effects like particles that doesn't seem right.

And so on.

Of course after stopping cart you can then resume() it ;).

And before you ask, yes I know you can stop execution with ESC, but sometimes you need to stop it at the very precise moment which is hard to do manually and so something like stop() would be useful.

P#14361 2015-09-19 12:41 ( Edited 2015-09-20 19:08)

[ :: Read More :: ]

Asking, because I'm interested in manipulating it via peek/poke.

P#14218 2015-09-15 21:17 ( Edited 2015-09-16 01:35)

[ :: Read More :: ]

With current one, playing 2 player games is downright impossible unless you have also a gamepad. Well, if you don't want to play a game of Hand Twister at the same time as well, that is.

So I'm proposing following mappings for the 2nd player:

Left: Numpad4
Up: Numpad8
Down: Numpad5
Right: Numpad6
Btn1: Numpad7
Btn2: Numpad9

Then our friend can sit at the side and while we're using arrows+z/x, he'd use just one hand to control the game.

This is exactly how I've set up second player in Nestopia, aside of mapping stert/select to Num+/NumEnter and it works remarkably well.

P#14202 2015-09-15 12:32 ( Edited 2015-09-16 06:56)

[ :: Read More :: ]

[deleted]

P#14196 2015-09-15 12:04 ( Edited 2015-09-15 16:04)

[ :: Read More :: ]

Title is self-explanatory I think.

P#14191 2015-09-15 10:25 ( Edited 2015-09-16 06:48)

[ :: Read More :: ]

I've noticed that after few hours of using Pico, it starts to get more and more memory, but only when you start opening many different carts in a single, long (few hours, the shortest time I've seen it happening was in a session about 3h long) session. Obviously closing and reopening pico fixes it, but it should be looked into even if it's small (the biggest it got in memory was about 450MB when leaking).

//edit: Also the first sign the leak is happening is that sound starts to get choppy. That was what alerted me of the issue for the first time and I was investigating it for the past 3 days to get to what exactly causes it.

P#14190 2015-09-15 10:21 ( Edited 2015-11-19 06:09)

[ :: Read More :: ]

Would save a ton in tokens since brackets are treated as separate tokens.

//edit: Or if you're calling version of function that takes no arguments, ex:

palt(12,true) -- <- brackets necessary
--draw something
palt -- <- brackets unnecessary since this version of palt has no parameters

Of course after such bracketless call/definition, a new line would be required, but most sane programmers do so anyway.

P#14163 2015-09-14 21:29 ( Edited 2015-09-16 15:52)

[ :: Read More :: ]

Or will I by doing so overwrite game's variables/code?

P#14158 2015-09-14 21:01 ( Edited 2015-09-15 01:17)

[ :: Read More :: ]

Could someone make cart that shows some basic transition effects (crossfade, swipe left/up/down, fade to black, etc) for those who want to have those but don't have skills to code it?

P#14157 2015-09-14 20:59 ( Edited 2015-09-15 10:56)

[ :: Read More :: ]

Pico should accept command line parameter that has cart filename and path in it and when it's present, load it, so I can associate .p8 files with Pico.

P#13911 2015-09-09 08:20 ( Edited 2015-09-09 13:55)

View Older Posts